
#include "Perus.h"





void MAAILMA::Aseta( double PV, double IP , double AK  )
{
    Painovoima = PV * 9.81;
    IlmanPaine = IP;
    AjanKulku = AK;
}


double MAAILMA::AnnaIlmanvastus( PAPERPLANE PP )
{
    double Korkeus = PP.Objekti.Sijainti.Y;
    //return 100.0 / (100.0 + (Korkeus*Korkeus*0.0001));
    return 1;

}


VEKTORI MAAILMA::AnnaPainovoimaKiihtyvyys()
{
    VEKTORI PainovoimaVektori = { 0, -Painovoima*0.0009, 0};
    return PainovoimaVektori;
}

VEKTORI MAAILMA::AnnaNostovoima( PAPERPLANE PP )
{
    
    VEKTORI NostovoimaVektori = PP.Objekti.AsentoM.YlosV();
    
    NostovoimaVektori.AsetaPituus( PP.NopeusV.AnnaPituus() / IlmanPaine * 0.01);

    return NostovoimaVektori;
}


VEKTORI MAAILMA::AnnaIlmanvastusvoima( PAPERPLANE PP )
{
    VEKTORI IlmanvastusvoimaVektori = PP.Objekti.AsentoM.EteenV();
    IlmanvastusvoimaVektori.KerroLuvulla( -1 );
    

    IlmanvastusvoimaVektori.AsetaPituus(  (PP.NopeusV.AnnaPituus()*PP.NopeusV.AnnaPituus() + 0.01) / AnnaIlmanvastus(PP) *0.0025 );
    
    return IlmanvastusvoimaVektori;
}



VEKTORI MAAILMA::AnnaKiihtyvyysVektori( VEKTORI *&VoimaVektorit, int LKM,  PAPERPLANE PP )
{
    VEKTORI KiihtyvyysVektori;
    KiihtyvyysVektori.NollaVektoriksi();
    
    for(int i=0; i<LKM; i++)
    {
        KiihtyvyysVektori.Lisaa( VoimaVektorit[i] );
    }
    
    KiihtyvyysVektori.AsetaPituus( (double)KiihtyvyysVektori.AnnaPituus()/PP.Massa );
    
    return KiihtyvyysVektori;
}







































